home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Internet Surfer: Getting Started
/
Internet Surfer - Getting Started (Wayzata Technology)(7231)(1995).bin
/
pc
/
mac
/
bonus
/
peter_le
/
finger_1
/
tokens
/
numsubs.p
< prev
next >
Wrap
Text File
|
1991-11-26
|
1KB
|
62 lines
unit NumSubs;
{ ⌐1991 Quinn "The Eskimo" }
interface
{$ifc undefined THINK_Pascal}
uses
Types;
{$endc}
type
anon_str = string[15];
function DecStr (n: longint): anon_str;
function HexN (n: integer): char;
function HexB (n: integer): anon_str;
function HexW (n: integer): anon_str;
function HexL (n: univ longint): anon_str;
implementation
{$ifc undefined THINK_Pascal}
uses
Packages;
{$endc}
function DecStr (n: longint): anon_str;
var
res: Str255;
begin
NumToString(n, res);
DecStr := res;
end; { DecStr }
function HexN (n: integer): char;
begin
if n >= 10 then begin
HexN := chr(n - 10 + ord('A'));
end
else begin
HexN := chr(n + ord('0'));
end; (* if *)
end; (* HexN *)
function HexB (n: integer): anon_str;
begin
HexB := concat(HexN(band(bsr(n, 4), $F)), HexN(band(n, $F)));
end; (* HexB *)
function HexW (n: integer): anon_str;
begin
HexW := concat(HexB(band(bsr(n, 8), $FF)), HexB(band(n, $FF)));
end; (* HexW *)
function HexL (n: univ longint): anon_str;
begin
HexL := concat(HexW(HiWrd(n)), HexW(LoWrd(n)));
end; (* HexL *)
end. { NumSubs }